|
AT-NFC
2.1 (win)
AT-NFC kernel set
|
HAL NFC Configuration Interface. More...
Data Structures | |
| struct | tag_HAL_CONFIG_NFC_COMB |
| NFC combination configuration data. More... | |
Typedefs | |
| typedef struct tag_HAL_CONFIG_NFC_COMB | HAL_CONFIG_NFC_COMB |
| NFC combination configuration data. | |
HAL NFC Configuration Interface.
This functions should be implemented by terminal application
| #define KER_CFG_EP_MASK_EXT_SEL_SUPPORT 0x0080 |
Extended Selection Support flag
| #define KER_CFG_EP_MASK_RDR_CLESS_FLOOR_LIMIT 0x0010 |
Reader Contactless Floor Limit present flag
| #define KER_CFG_EP_MASK_RDR_CLESS_LIMIT 0x0008 |
Reader Contactless Transaction Limit present flag
| #define KER_CFG_EP_MASK_RDR_CVM_REQ_LIMIT 0x0020 |
Reader CVM Required Limit present flag
| #define KER_CFG_EP_MASK_STATUS_CHECK 0x0001 |
EP configuration (HAL_CONFIG_NFC_COMB.usConfDataPresentMask and HAL_CONFIG_NFC_COMB.usConfDataSetMask) flags definitions. Status Check Support flag
| #define KER_CFG_EP_MASK_TTQ 0x0040 |
TTQ present flag
| #define KER_CFG_EP_MASK_ZERO_AMOUNT 0x0002 |
Zero Amount Allowed flag
| #define KER_CFG_EP_MASK_ZERO_AMOUNT_OFFLINE 0x0004 |
Zero Amount for Offline Allowed flag
| #define KER_CFG_EP_PRE_CLESS_APP_NOT_ALLOWED 0x0002 |
Contactless Application Not Allowed
| #define KER_CFG_EP_PRE_RDR_CLESS_FLOOR_LIMIT_EXCEEDED 0x0010 |
Reader Contactless Floor Limit Exceeded
| #define KER_CFG_EP_PRE_RDR_CVM_REQ_LIMIT_EXCEEDED 0x0008 |
Reader CVM Required Limit Exceeded
| #define KER_CFG_EP_PRE_STATUS_CHECK_REQUESTED 0x0001 |
EP Preprocessing (HAL_CONFIG_NFC_COMB.usPreprocIndicators) flags definitions (EMV Book A, Table 5-3)
Status Check Requested
| #define KER_CFG_EP_PRE_ZERO_AMOUNT 0x0004 |
Zero Amount
| #define KER_CFG_ID_NFC_AMEX_MPOS 0x1401 |
Set this parameter to configure mPOS device for AMEX Optional, 1 bytes length value Defines mPOS mode, 0 - Standard POS; 1 - mPOS-C; 2 - mPOS-CSP Usage: C-4 Optional, 0 by default
| #define KER_CFG_ID_NFC_APDU_TIMING_LATENCY 0x1122 |
Defines fixed APDU timing latency (in 100 microseconds) Defines latency in 100 microseconds, 0-99999999. Usage: C-2 Optional, 0 by default.
| #define KER_CFG_ID_NFC_BIN_RANGE_ID 0x1108 |
Provides BIN Range ID Usage: All NFC kernels Optiobal, Numeric
| #define KER_CFG_ID_NFC_CCC_APDU_TIMEOUT 0x1146 |
Defines rrp CCC (COMPUTE CRYPTOGRAPHIC CHECKSUM) APDU rrp protection timeout Defines timeout in 100 microseconds, 0-99999999. Usage: C-2 Optional, 0 (not set) by default.
| #define KER_CFG_ID_NFC_CT_APDU_TIMEOUT 0x1145 |
Defines rrp CT (Complete Transaction) APDU rrp protection timeout Defines timeout in 100 microseconds, 0-99999999. Usage: MIR Optional, 0 (not set) by default.
| #define KER_CFG_ID_NFC_DATA_EXCHANGE_LIST 0x1112 |
Set this parameter to setup data exchage list for Data Exchange procedure Usage: C-3, C-7, MIR This is optional parameter, containing tag list to pass for terminal during data exchange
| #define KER_CFG_ID_NFC_DATA_RECORD 0x1105 |
Provides scheme specific data record Usage: All NFC kernels
| #define KER_CFG_ID_NFC_DISCR_DATA 0x1106 |
Provides scheme specific discr data Usage: All NFC kernels
| #define KER_CFG_ID_NFC_EMV_DATA_RECORD_TAG_LIST 0x1101 |
Provides scheme specific emv data record tag list Usage: All NFC kernels
| #define KER_CFG_ID_NFC_EMV_DISCR_DATA_TAG_LIST 0x1102 |
Provides scheme specific emv discr data tag list Usage: All NFC kernels
| #define KER_CFG_ID_NFC_ENABLE_BIN_RANGE_ID_TRACE 0x1107 |
Set this parameter to trace BIN Range ID Defines indicator, 0 - 1. Usage: All NFC kernels Optional, 0 by default.
| #define KER_CFG_ID_NFC_ENABLE_DEDS 0x1111 |
Set this parameter to enable DE/DS Defines indicator, 0 - 1. Usage: C-2 Implementation option name: "Data Exchange & Data Storage (DE/DS)" C-3 Implementation option name: "Data Exchange & Data Storage (DE/DS)" Optional, 0 by default.
| #define KER_CFG_ID_NFC_EP_CLESS_FLOOR_LIMIT 0x1007 |
Set this parameter to define Reader Contactless Floor Limit for particular combination Usage: Entry Point, HAL Optional, 4 bytes length value, not set by default.
| #define KER_CFG_ID_NFC_EP_CLESS_TRAN_LIMIT 0x1006 |
Set this parameter to define Reader Contactless Transaction Limit for particular combination Usage: Entry Point, HAL Optional, 4 bytes length value, not set by default.
| #define KER_CFG_ID_NFC_EP_COLLISION_RESOLUTION_TIMEOUT 0x1021 |
Card polling collision resolution timeout (delay to show “Please Present One Card Only” message after card removal detection) Usage: Entry Point Defines timeout in ms, 0-9999. 3000 by Default.
| #define KER_CFG_ID_NFC_EP_CPCL_DATA 0x1034 |
CPLC data (tag9F7F) value Usage: Entry Point Use this ID to request CPLC data from outside
| #define KER_CFG_ID_NFC_EP_CPCL_DATA_REQUEST 0x1032 |
Request CPLC data (tag9F7F) bitmask Usage: Entry Point Optional, 1 bytes length bitmask (0 by default): 0x01 - enable cplc data request 0x02 - fatal exit on cplc data request errors
| #define KER_CFG_ID_NFC_EP_CVM_REQUIRED_LIMIT 0x1008 |
Set this parameter to define Reader Contactless CVM Required Limit for particular combination Usage: Entry Point, HAL Optional, 4 bytes length value, not set by default.
| #define KER_CFG_ID_NFC_EP_EXT_SEL_SUPPORT 0x1004 |
EP Configuration data (EMV Book A, Table 5-2), see KER_CFG_EP_MASK_EXT_SEL_SUPPORT Defines indicator, 0-1. Usage: Entry Point, HAL Optional, not set by default.
| #define KER_CFG_ID_NFC_EP_KEEP_TRAN_AFTER_SELECT_NEXT 0x1033 |
OBSOLETE! MIR Test Cases 2MI.009.00 2MI.009.01 fixed by NSPK Keep tran data after 'Select Next' outcome till next candidate selection, to have data record for no more candidate option (MIR specific, MIR Test Cases 2MI.009.00 2MI.009.01) Usage: Entry Point Optional, 1 bytes length value (0 - clear all tran data (default); 1 - keep tran data)
| #define KER_CFG_ID_NFC_EP_SPI 0x1031 |
Set this parameter to enable EP SEND POI INFORMATION Defines indicator, 0-1. Usage: Entry Point Optional, 0 by default.
| #define KER_CFG_ID_NFC_EP_STATUS_CHECK 0x1001 |
EP Configuration data (EMV Book A, Table 5-2), see KER_CFG_EP_MASK_STATUS_CHECK Defines indicator, 0-1. Usage: Entry Point, HAL Optional, not set by default.
| #define KER_CFG_ID_NFC_EP_TTQ 0x1005 |
Set this parameter to define TTQ for particular combination Usage: Entry Point, HAL Optional, 4 bytes length value, not set by default.
| #define KER_CFG_ID_NFC_EP_ZERO_AMOUNT 0x1002 |
EP Configuration data (EMV Book A, Table 5-2), see KER_CFG_EP_MASK_ZERO_AMOUNT Defines indicator, 0-1. Usage: Entry Point, HAL Optional, not set by default.
| #define KER_CFG_ID_NFC_EP_ZERO_AMOUNT_OFFLINE 0x1003 |
EP Configuration data (EMV Book A, Table 5-2), see KER_CFG_EP_MASK_ZERO_AMOUNT_OFFLINE Defines indicator, 0-1. Usage: Entry Point, HAL Optional, not set by default.
| #define KER_CFG_ID_NFC_ERRD_APDU_TIMEOUT 0x1147 |
Defines rrp ERRD (EXCHANGE RELAY RESISTANCE DATA) APDU rrp protection timeout Defines timeout in 100 microseconds, 0-99999999. Usage: C-2 Optional, 0 (not set) by default.
| #define KER_CFG_ID_NFC_FIELD_OFF_TIMEOUT 0x1121 |
Set this parameter to setup field off timeout Defines timeout in 100 ms, 0-9999. Usage: C-3: to setup CD-CVM request Outcome field off timeout (if KER_CFG_ID_NFC_CD_CDM_REQUEST_IS_FINAL not configured) (range 10 - 20 recommended by VISA (default 13)
| #define KER_CFG_ID_NFC_GAC_APDU_TIMEOUT 0x1142 |
Defines rrp GAC APDU rrp protection timeout Defines timeout in 100 microseconds, 0-99999999. Usage: C-2, C-4, MIR Optional, 0 (not set) by default.
| #define KER_CFG_ID_NFC_GPO_APDU_TIMEOUT 0x1141 |
Defines rrp GPO APDU rrp protection timeout Defines timeout in 100 microseconds, 0-99999999. Usage: C-2, C-3, C-4, C-7, MIR Optional, 0 (not set) by default.
| #define KER_CFG_ID_NFC_MC_FAILED_MS_CNTR 0x1201 |
Access to MC "Failed MS Cntr" C-2 parameter name: "Failed MS Cntr" Optional, 1 bytes length value Value can be modified by hal_cfg_set_config_by_id
| #define KER_CFG_ID_NFC_MIR_CPLC_MAND_FOR_PROT_01 0x1F03 |
Set this parameter to force Try Another Interface Outcome, if cplc data was not obtained and Protocol 01 selected Defines kernel behavior: 0 - standart, 1 - force Try Another Interface Outcome Usage: MIR Optional, 0 by default
| #define KER_CFG_ID_NFC_MIR_CPLC_MAND_FOR_PROT_02 0x1F04 |
Set this parameter to force Try Another Interface Outcome, if cplc data was not obtained and Protocol 02 selected Defines kernel behavior: 0 - standart, 1 - force Try Another Interface Outcome Usage: MIR Optional, 0 by default
| #define KER_CFG_ID_NFC_MIR_OUTCOME_CVM_STATUS 0x1F02 |
Provides extended MIR Outcome cvm status (1 byte, see NFC_MIR_OUTCOME_CVM_SKIP_CVM ...) Usage: MIR Optional, 1 bytes length binary value
| #define KER_CFG_ID_NFC_MIR_OUTCOME_UI_STATUS 0x1F01 |
Provides extended MIR Outcome UI status (1 byte, see NFC_MIR_OUTCOME_STATUS_NA ...) Usage: MIR Optional, 1 bytes length binary value
| #define KER_CFG_ID_NFC_MS_DATA_RECORD_TAG_LIST 0x1103 |
Provides scheme specific ms data record tag list Usage: All NFC kernels
| #define KER_CFG_ID_NFC_MS_DISCR_DATA_TAG_LIST 0x1104 |
Provides scheme specific ms discr data tag list Usage: All NFC kernels
| #define KER_CFG_ID_NFC_PREPROC_INDICATORS_MASK 0x1009 |
Preconfigured preprocessing results for autorun mode Usage: Entry Point, HAL Optional, 2 bytes length bitmask, not set by default KER_CFG_EP_PRE_STATUS_CHECK_REQUESTED KER_CFG_EP_PRE_CLESS_APP_NOT_ALLOWED KER_CFG_EP_PRE_ZERO_AMOUNT KER_CFG_EP_PRE_RDR_CVM_REQ_LIMIT_EXCEEDED KER_CFG_EP_PRE_RDR_CLESS_FLOOR_LIMIT_EXCEEDED
| #define KER_CFG_ID_NFC_PT_APDU_TIMEOUT 0x1143 |
Defines rrp PT (Perform Transaction with AC) APDU rrp protection timeout Defines timeout in 100 microseconds, 0-99999999. Usage: MIR Optional, 0 (not set) by default.
| #define KER_CFG_ID_NFC_PT_LIGHT_APDU_TIMEOUT 0x1144 |
Defines rrp PT (Perform Transaction w/o AC) APDU rrp protection timeout Defines timeout in 100 microseconds, 0-99999999. Usage: MIR Optional, 0 (not set) by default.
| #define KER_CFG_ID_NFC_TRAN_CONTEXT_TAG_LIST 0x1131 |
Transaction context tag list, used for T_NFC_CALLBACK_CFG_GET_CONFIG_BY_ID param pTranContext Usage: All NFC kernels Optional, empty by default.
| #define KER_CFG_ID_NFC_VISA_DISABLE_AUC_FOR_CASHBACK 0x1302 |
Set this parameter to configure VISA AUC check for cashback transactions Defines indicator, 0 (enabled) - 1 (disabled). Usage: C-3 Optional, 0 by default
| #define KER_CFG_ID_NFC_VISA_DISABLE_AUC_FOR_MANUAL_CASH 0x1301 |
Set this parameter to configure VISA AUC check for manual cash transactions Defines indicator, 0 (enabled) - 1 (disabled). Usage: C-3 Optional, 0 by default
| #define KER_CFG_ID_NFC_VISA_FORCE_ONLINE_IF_APP_EXPIRED 0x1303 |
Set this parameter to force online if App expired despite of CTQ settings Defines indicator, 0 (decline [standard behavior]) - 1 (force online). Usage: C-3 Optional, 0 by default
| KER_BOOL hal_cfg_get_nfc_custom_kernel_id | ( | KER_CTX_PARAM const KER_BYTE * | p61, |
| KER_INT16U | us61Len, | ||
| KER_BYTE * | pbtKernelID, | ||
| KER_BYTE * | pbtKernelIDLen, | ||
| KER_BYTE | btMaxLen | ||
| ) |
Provides custom mapping between Directory Entry and Requested Kernel ID.
| [in] | p61 | Directory Entry (tag 61) |
| [in] | us61Len | p61 length |
| [out] | pbtKernelID | Buffer to obtain requested Kernel ID (max 8 bytes) |
| [out] | pbtKernelIDLen | Buffer to obtain requested Kernel ID length |
| [in] | btMaxLen | pbtKernelID buffer size |
| KER_BOOL hal_cfg_get_nfc_default_kernel_id | ( | KER_CTX_PARAM const KER_BYTE * | pAID, |
| KER_INT16U | usAIDLen, | ||
| KER_BYTE * | pbtKernelID, | ||
| KER_BYTE * | pbtKernelIDLen, | ||
| KER_BYTE | btMaxLen | ||
| ) |
Provides default AID - Kernel ID mapping.
EMV Book B, Table 3-6: Default Value for Requested Kernel ID Matching AID Default Value for Requested Kernel ID American Express AID 00000100b Discover AID 00000110b JCB AID 00000101b MasterCard AID 00000010b UnionPay AID 00000111b Visa AID 00000011b Other 00000000b
| [in] | pAID | AID for which default Kernel ID requested |
| [in] | usAIDLen | pAID length |
| [out] | pbtKernelID | Buffer to obtain requested Kernel ID (max 8 bytes) |
| [out] | pbtKernelIDLen | Buffer to obtain requested Kernel ID length |
| [in] | btMaxLen | pbtKernelID buffer size |
| KER_BOOL hal_cfg_get_nfc_ep_config | ( | KER_CTX_PARAM KER_TLV * | pTranData, |
| HAL_CONFIG_NFC_COMB ** | ppCombList | ||
| ) |
Provides configuration (common / combination / tran related for EP.
| [in] | pTranData | transaction data obtained from Terminal Application |
| [out] | ppCombList | transaction related combinations configurations list |
Terminal should use kerContTlvCreateByTag or kerContTlvCreateByTLV to create tlv container list for combination configuration EP/Kernel may update obtained combination configuration during transaction processing